package cc.customer.system.service;

import cc.customer.common.domain.ResponseBo;
import cc.customer.common.domain.Tree;
import cc.customer.common.service.IService;
import cc.customer.system.domain.Dept;
import com.alibaba.fastjson.JSONArray;

import java.util.List;

public interface DeptService extends IService<Dept> {

	Tree<Dept> getDeptTree();

	List<Dept> findAllDepts(Dept dept);

	Dept findByName(String deptName);

	Dept findById(Long deptId);
	
	void addDept(Dept dept);
	
	void updateDept(Dept dept);

	void deleteDepts(String deptIds);

	/**查询部门和人员树状结构---禁用部门**/
	JSONArray getDeptAndUserTree();
	/**查询部门和人员树状结构---启用部门**/
	JSONArray getDeptAndUserTreeByDept();

	/**主管带有权限的 树状结构**/
	JSONArray getDeptAndUserTreeByRoles(Long deptid);

	/**获取部门树**/
	JSONArray getDeptToJSTree();

	ResponseBo selectDingByCRound(String puuid, String type, String deptid);

}
